![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 14.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Opcja przypomnienia hasla na serwisie. Do dyspozycji mam jedynie e-maila uzytkownika. W zasadzie w wiekszosci przypadkow robi sie to chyba tak: Uzytkownik proszony jest o podanie e-maila, jezeli e-mail znaleziony zostal w bazie, zostaje wygenerowane nowe haslo, ktore zapisujemy do bazy i wysylamy uzytkownikowi na e-maila, deaktywujac jednoczesnie konto. W mailu oprocz nowego hasla przesylamy link aktywujacy. Glowny minus tego rozwiazania: ktos moze kilka razy dziennie zmieniac nam haslo wiedzac, ze nasz mail figuruje w bazie danych. Proponowane rozwiazanie: Uzytkownik podaje e-maila, jezeli istnieje w bazie, proszony jest o haslo do skrzynki pocztowej. Za pomoca curl'a sprawdzam czy mozna sie zalogowac do skrzynki, jezeli tak to wysylamy/wyswietlamy mu nowe haslo. Czy taki pomysl jest dobry? W kwestii pracy z curlem jestem poki co teoretykiem jedynie (IMG:style_emoticons/default/tongue.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat Glowny minus tego rozwiazania: ktos moze kilka razy dziennie zmieniac nam haslo wiedzac, ze nasz mail figuruje w bazie danych. To zamiast zmieniac hasło od razu, to wysyłaj tylko linka do zmiany hasła. Dopiero gdy koleś kliknie w linka, ktory otrzymał w mailu, to dopiero potem zmieniaj mu hasło
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 14.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Fakt, myslalem o takim rozwiazaniu, ale nie chcialem tworzyc dodatkowego pola z nowym haslem.
Hmn, chociaz w tej chwili uswiadomilem sobie, ze przeciez w bazie nie musze zapisac nowego hasla, wszystko bedzie zawarte w linku aktywacyjnym i tak jak mowisz, dopiero po kliknieciu haslo zostanie zedytowane. Zakrecilem, zakrecilem, dzieki za wskazowke (IMG:style_emoticons/default/smile.gif) temat do zamkniecia w sumie (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Gdzie Ty się chcesz komuś logować na skrzynkę pocztową...
1) Użytkownik podaje swój adres email 2) W skrzynce dostaje maila z linkiem w stylu: ..../przypomnij-haslo/123456/3453413fjdsjfsfjsdkj Gdzie 123456 to ID maila, a drugi kod to losowo wygenerowany token (on jest również zapisany w bazie danych strony) 3) Po wejściu na taki link sprwdzasz czy w bazie danych istnieje para: 123456, 3453... - jeśli tak generujesz losowe hasło, ustawiasz to hasło jako hasło użytkownika oraz wyświetlaszu mu je (ew. wysyłasz na maila) |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 1 Dołączył: 14.12.2004 Ostrzeżenie: (0%) ![]() ![]() |
Tak, racja, racja, problem juz rozwiazalem w taki sposob:
user podaje maila na maila w linku wysylam id usera, token (md5(hash.mail)) i md5(nowe haslo)... dopiero po kliknieciu w linka haslo jest zmieniane... a token stworzony na podstawie maila to po to by nie tworzyc nowych zbednych kolumn w tabeli |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 182 Pomógł: 14 Dołączył: 20.09.2008 Ostrzeżenie: (0%) ![]() ![]() |
proszony jest o haslo do skrzynki pocztowej. <br /><br /><br />O LOL (IMG:style_emoticons/default/biggrin.gif) Co Ty palisz (IMG:style_emoticons/default/biggrin.gif) Sorry, ale nie mogłem się powstrzymać po przeczytaniu tego... (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 6 381 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Tak, racja, racja, problem juz rozwiazalem w taki sposob: user podaje maila na maila w linku wysylam id usera, token (md5(hash.mail)) i md5(nowe haslo)... dopiero po kliknieciu w linka haslo jest zmieniane... a token stworzony na podstawie maila to po to by nie tworzyc nowych zbednych kolumn w tabeli A po co w ogóle słać użytkownikowi nowe hasło? Ja mam jeszcze (pomijając że do tego jest cała tabela załóżmy "nowehasla", w końcu od tego jest baza) czas wysłania który aktywny jest przez x dni. Po tym czasie trzeba wygenerować nowy hash. Oczywiście aktywny jest tylko jeden na raz dla danego konta. Oprócz tego zbieram IP i wyświetlam użytkownikowi żeby mógł sobie sprawdzić czy ktoś nie kombinuje z jego kontem. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 21:07 |